package demo3;

public class Engine {//发动机
    void start(){
        System.out.println("引擎启动");
    }
}

class Car{
    private Engine engine;//一个引用被封装了
    public Car (Engine engine){
        this.engine=engine;
    }
    public void startCar(){
        engine.start();//访问start这个方法
        System.out.println("出发");
    }
    public static void main(String[] args) {
        Engine engine =new Engine();
        Car car=new Car(engine); //把new Engine() 这个对象传给构造
        car.startCar();
    }
}



     //一个示例
//public class B  {//非子类中没有继承，所以要通过对象访问
//    public void ok(){
//        A a=new A();
//
//        a.a1=10;  //被父类中public修饰的成员能够被访问
////        a.a2=11;  //被protected修饰的成员不能在不同包的非子类中被访问
////        a.a3=12;  //父类中被default修饰的成员不能被访问
////        a.a4=13;  //父类中被private修饰的成员不能被访问，就算变个
//                     // 花样用super.a4访问也是不行
//    }
//}
